<?php
class Docente extends CI_Controller {
		
		function Docente () {
			parent::__construct();
			
			$this->load->helper('url');
			$this->load->helper('form');
			

		}
		
		function index () {
			$data['title']='Docente';
			$data['heading']='Agregar Docente';
			
			$data['result']= $this->getAllOrderBy('id');
			$persona=new Entities\Persona;
			$tipodocente=new Entities\TipoDocente;
			
			$docente = new Entities\Docente;
			$docente->setIdpersona($persona);
			$docente->setIdtipodocente($tipodocente);
			
			$data['registro']=$docente;
			
			$data['action']='agregar';
			$data['submit']='Agregar';
			$this -> load -> view('docente_view',$data);
		}
		
		public function getAll()
		{
		    $docentes = $this->doctrine->em->getRepository('Entities\Docente')->findAll();
			return $docentes;
		}
		
		public function getAllOrderBy($orden)
		{
		    //
		    $permisos = $this->doctrine->em->createQuery('SELECT p FROM Entities\Docente p ORDER BY p.'. $orden .' ASC')->getResult(); 
			return $permisos;
		}
		
		public function remove ($id)
		{
			$docente = $this->doctrine->em->find('Entities\Docente',$id);
			$this->doctrine->em->remove($docente);
			$this->doctrine->em->flush();
			redirect('docente');
		}
		
		public function agregar()
		{
			$docente = new Entities\Docente;
			$persona =$this->doctrine->em->find('Entities\Persona',$_POST["tx_persona"]);
			$tipodocente=$this->doctrine->em->find('Entities\TipoDocente',$_POST["tx_tipodocente"]);
			$docente->setIdpersona($persona);    		
			$docente->setIdtipodocente($tipodocente);
    		$docente->setLegajo($_POST["tx_legajo"]);
    		$docente->setEscoordinadorarea($_POST["tx_escoordinadorarea"]);		
    		$this->doctrine->em->persist($docente);
    		$this->doctrine->em->flush();
    		redirect('docente');
 		}
		
		public function editar ($id)
		{
			$docente = $this->doctrine->em->find('Entities\Docente',$id);
			$data['title']='Docente';
			$data['heading']='Actualizar Docente';
			
			$data['result']= $this->getAllOrderBy('id');
			$data['registro']=$docente;
			$data['action']='actualizar';
			$data['submit']='Actualizar';
			$this -> load -> view('docente_view',$data);
		}
		
		public function actualizar($id)
		{
			
			$docente = $this->doctrine->em->find('Entities\Docente',$id);
			$persona =$this->doctrine->em->find('Entities\Persona',$_POST["tx_persona"]);
			$tipodocente=$this->doctrine->em->find('Entities\TipoDocente',$_POST["tx_tipodocente"]);
			$docente->setIdpersona($persona);    		
			$docente->setIdtipodocente($tipodocente);
    		$docente->setLegajo($_POST["tx_legajo"]);
    		$docente->setEscoordinadorarea($_POST["tx_escoordinadorarea"]);		
    		$this->doctrine->em->persist($docente);
    		$this->doctrine->em->flush();
    		redirect('docente');
		}
}
?>